export type DescriptionProps = {
  visible?: boolean; //是否显示
  title?: string; //Dialog标题
  isEngineer?: boolean;
  isCalc?: boolean;

  tableHeader?: any[];
  row: Record<string, any>[];
};

export type SubtitleProps = {
  visible?: boolean; //是否显示
  title?: string; //Dialog标题
  isEngineer?: boolean;
  isCalc?: boolean;

  tableHeader?: any[];
  row: Record<string, any>[];
  checkedKeys: React.Key[];
};

export type ContentProps = {
  visible?: boolean; //是否显示
  title?: string; //Dialog标题
  isEngineer?: boolean;
  isCalc?: boolean;

  tableHeader?: any[];
  row: Record<string, any>[];
  actionRef?: React.Ref<any>;
};

export type SalesNeedInfoProps = {
  visible?: boolean; //是否显示
  title?: string; //Dialog标题
  isStacker?: boolean;

  tableHeader?: any[];
  row: Record<string, any>[];
  actionRef?: React.Ref<any>;
};



export type FormDialogProps = {
  title?: string; // 弹框标题
  visible: boolean; //是否可见
  columns?: FormItem[]; //columns值
  disabled?: boolean; // 是否允许
  isCreate?: boolean;
  isG120Eng?: boolean;
  isG120Calc?: boolean;
  values?: object;
  initialValues?: object;
  onOk: () => void; //确认按钮
  onCancel: () => void; // 取消按钮
};

export type FormItem = {
  label: string; //标签
  field: string; //域名
  rules?: object; //规则
  type?: string; //类型
  hidden?: boolean; //是否隐藏
  disabled?: boolean; //是否禁止
  options?: any[];
  value?: any;
};

export type CommonProps = {
  title?: string; // 弹框标题
  visible: boolean; //是否可见
  defaultParaVisible?: boolean;
  isCalc?: boolean;
  isCalcEdit?: boolean;
  isLib?: boolean,
  columns: FormItem[]; //columns值
  disabled?: boolean; // 是否允许
  initialValues?: object;
  onOk: () => void; //确认按钮
  onCancel: () => void; // 取消按钮
};

export type CalcSubtitleProps = {
  visible?: boolean; //是否显示
  title?: string; //Dialog标题

  tableHeader?: any[];
  row: Record<string, any>[];
  checkedKeys: React.Key[];
};

export type LibSubtitleProps = {
  visible?: boolean; //是否显示
  title?: string; //Dialog标题
  isEngineer?: boolean

  tableHeader?: any[];
  row: Record<string, any>[];
  checkedKeys: React.Key[];
};

export type CalcDescriptionProps = {
  visible?: boolean; //是否显示
  title?: string; //Dialog标题

  tableHeader?: any[];
  row: Record<string, any>[];
};

export type LibDescriptionProps = {
  visible?: boolean; //是否显示
  title?: string; //Dialog标题
  isEngineer?: boolean

  tableHeader?: any[];
  row: Record<string, any>[];
};



export type CalcMatchProps = {
  visible: boolean; //是否显示
  title?: string; //Dialog标题

  tableHeader?: any[];
  row: Record<string, any>[];
  initialValues?: object;
  onOk: () => void; //确认按钮
  onCancel: () => void; // 取消按钮
};